package com.lanyun.aicorrectassistant.controller.admin.studentAssignments.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;

/**
 * 学生作业表基础视图对象
 *
 * @author makejava
 * @since 2025-05-12
 */
@Data
public class StudentAssignmentsBaseVO implements Serializable {
    private static final long serialVersionUID = -54125232284031935L;

    /**
     * 学生作业ID
     * (数据库字段: id)
     */
    private Long id;
    
    /**
     * 关联作业模板ID
     * (数据库字段: template_id)
     */
    private Long templateId;
    
    /**
     * 关联学生ID
     * (数据库字段: student_id)
     */
    private Long studentId;
    
    /**
     * 学生提交文件路径
     * (数据库字段: file_path)
     */
    private String filePath;
    
    /**
     * 使用的AI阅卷思路（从模板复制）
     * (数据库字段: ai_thinking_process)
     */
    private String aiThinkingProcess;
    
    /**
     * 批改状态：wait-待提交,pending-批改中, completed-已完成, error-错误
     * (数据库字段: status)
     */
    private String status;
    
    /**
     * 批改完成时间
     * (数据库字段: grade_time)
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date gradeTime;
    
    /**
     * 提交时间
     * (数据库字段: create_time)
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    
    /**
     * 创建人
     * (数据库字段: create_by)
     */
    private String createBy;
    
    /**
     * 修改人
     * (数据库字段: update_by)
     */
    private String updateBy;
    
    /**
     * 修改时间
     * (数据库字段: update_time)
     */
    private Date updateTime;
    
    /**
     * 是否删除 1-未删除/0-已删除
     * (数据库字段: is_deleted)
     */
    private Integer isDeleted;
    
}
